iT邦幫忙

2025 iThome 鐵人賽

DAY 3
0
Software Development

從零開始,30天學會MongoDB系列 第 3

BSON 資料結構、Schema 設計思維

  • 分享至 

  • xImage
  •  

什麼是BSON

BSON = Binary JSON(二進位 JSON)
它是一種資料儲存與傳輸格式,是 MongoDB 的內部資料表示方式。
MongoDB 資料在磁碟與記憶體中是以 BSON 儲存。

支援多種資料型態,比JSON更豐富,包括:

  • 字串 (String)
  • 32位與64位整數 (Int32, Int64)
  • 64位浮點數 (Double)
  • 128位十進位浮點數 (Decimal128)
  • 日期 (Date,以毫秒為單位的Unix時間戳)
  • 布林值 (Boolean)
  • 空值 (Null)
  • 二進位資料 (Binary)
  • 巢狀文件(Document)
  • 陣列 (Array)
  • 正則表達式 (Regex)
  • JavaScript程式碼

JSON vs BSON 資料型態對照表

以下示範一個「使用者(User)」資料的結構:

資料型態 JSON 範例 BSON 範例
字串 (String) "name": "Alice" "name": "Alice"
整數 (Integer) "age": 30 "age": Int32(30)
浮點數 (Double) "height": 165.5 "height": Double(165.5)
布林值 (Boolean) "isActive": true "isActive": true
陣列 (Array) "tags": ["admin", "editor"] "tags": [ "admin", "editor" ]
物件 (Object) "address": { "city": "Taipei", "zip": "100" } "address": Document({ "city": "Taipei", "zip": "100" })
日期 (Date) "createdAt": "2025-09-16T12:00:00Z" "createdAt": ISODate("2025-09-16T12:00:00Z")
二進位資料 (Binary) ❌ 不支援 "avatar": BinData(0, "base64...")
ObjectId ❌ 不支援 "_id": ObjectId("507f1f77bcf86cd799439011")

上一篇
MongoDB 安裝、基本 CRUD
系列文
從零開始,30天學會MongoDB3
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言